package com.tan.lbs.service;

import java.util.ArrayList;

import com.tan.lbs.entity.DialogNode;
import com.tan.lbs.entity.DialogNodeOrder;
import com.tan.lbs.entity.DialogNodeInTree;

public interface DialogService {

	DialogNodeInTree retrieveDialogInTree(String npcID);
	DialogNode readDialogNodeDetails(String dialogNodeID);
	void modifyDialogNodeDetails(DialogNode dialogNode);
	ArrayList<DialogNodeOrder> retrieveBranchesForFromDialogNode(String fromNodeID);
	/**
	 * Create a new child dialog node and branch between them
	 * @param dialogNodeID
	 * @return [0] the new created child dialogNodeID [1] the new created dialogNodeOrderID
	 */
	ArrayList<String> createNewBranchForDialogNode(String dialogNodeID,String newNodeName);
	void modifyBranchDetails(DialogNodeOrder dialogNodeOrder);
	void deleteDialogNodeAndChildren(String dialogNodeID);
	
}
